import { createStore } from 'vuex'
import persist from 'vuex-persistedstate'
export default createStore({
  state: {
    tasks: [] // 用来收集用户添加的任务
  },
  getters: {
    //计算正在进行的任务数量
    num(state) {
      // 当任务的check属性为false时表示任务正在进行中 所以这里只需要统计check值为false的任务数量
      let n = 0
      state.tasks.forEach(item => {
        if(!item.check) {
          n++
        }
      })
      return n
    }
  },

  mutations: {
    addTasks(state, task) {
      let obj = {
        task,
        id: new Date().getTime(),
        isExit: false,// 定义任务是否处于编辑状态  false表示处于非编辑状态
        check: false // 定义任务是否处于完成状态 false表示任务正在进行
      }
      state.tasks.push(obj)
    },

    changeTasks(state, arr) {
      // console.log(arr);
      state.tasks = arr
    } 
  },
  actions: {
  },
  modules: {
  },

  plugins: [persist()] // 数据持久化
})
